<template>
  <div ref="radar" class="radar">雷达</div>
</template>

<script>
// 1.准备一个有宽和高的容器
// 2.下载导入echarts
// 3.初始化echarts实例 echarts.init(document.querySelector('id'))
// 4.准备数据options
// 5.设置数据 setOption()

// 全部引入
// import * as echarts from 'echarts'

// 按需引入
// 引入 echarts 核心模块，核心模块提供了 echarts 使用必须要的接口。
import * as echarts from 'echarts/core'
// 引入雷达图图表，图表后缀都为 Chart
import { RadarChart } from 'echarts/charts'
// 引入提示框，标题，直角坐标系，数据集，内置数据转换器组件，组件后缀都为 Component
import {
  TitleComponent, // 标题
  //   TooltipComponent, // 工具提示组件
  //   GridComponent,//网格
  //   DatasetComponent,
  //   TransformComponent
  LegendComponent
} from 'echarts/components'
// 标签自动布局，全局过渡动画等特性
// import { LabelLayout, UniversalTransition } from 'echarts/features'
// 引入 Canvas 渲染器，注意引入 CanvasRenderer 或者 SVGRenderer 是必须的一步
import { CanvasRenderer } from 'echarts/renderers'
// 注册必须的组件
echarts.use([
  TitleComponent,
  RadarChart,
  LegendComponent,
  CanvasRenderer
])

export default {
  name: 'Radar',

  // 注意: 要在元素挂载完毕时 才能得到dom元素
  mounted() {
    const myCharts = echarts.init(this.$refs.radar)
    const option = {
      title: {
        text: '基础雷达图'
      },
      legend: {
        data: ['平均水平', '个人价值']
      },
      radar: {
        // shape: 'circle',
        indicator: [
          { name: 'Sales', max: 6500 },
          { name: 'Administration', max: 16000 },
          { name: 'Information Technology', max: 30000 },
          { name: 'Customer Support', max: 38000 },
          { name: 'Development', max: 52000 },
          { name: 'Marketing', max: 25000 }
        ]
      },
      series: [
        {
          name: 'Budget vs spending',
          type: 'radar',
          data: [
            {
              value: [4200, 3000, 20000, 35000, 50000, 18000],
              name: '平均水平'
            },
            {
              value: [5000, 14000, 28000, 26000, 42000, 21000],
              name: '个人价值'
            }
          ]
        }
      ]
    }
    myCharts.setOption(option)
  }
}

</script>

<style lang="scss" scoped>
.radar{
    width: 500px;
    height: 400px;
}
</style>
